Electronic commerce (e-commerce) is growing at an incredible rate. With the ever expanding popularity of electronic networks such as the Internet, companies and individuals are seeking ways to efficiently use such networks as a medium for conducting business. While e-commerce is steadily growing in popularity, a potential impediment to realizing electronic commerce's full potential resides in a perception that financial information which is required to perform a transaction, such as credit card account data and debit card personal identification numbers and the like, is subject to interception and misuse by unauthorized third parties when transmitted over an open network such as the Internet.
In general, to process payment information over a network, a personal identification number (“PIN”) can be used to verify that the sender of payment information is the person or entity authorized to use the payment information. For example, if a customer is using a debit card or other electronic account access to purchase goods and services on the Internet, the payment information will include a PIN which will be checked by the debit card issuer processing center. While using a credit card over a network currently does not typically involve the use of a PIN, the verification technique of a PIN could be used with credit cards or electronic cash cards. If the PIN is valid, the transaction will proceed pending other verifications. If the PIN is invalid, the customer will be asked to retransmit the payment information with the correct PIN. If the correct PIN is not entered after a predetermined number of times, the transaction will be denied.
As the PIN prevents the unauthorized use of the card or account information in the case of a lost or stolen card, PIN information must be treated very securely in typical debit transactions, automatic teller machine (“ATM”) transactions and any transactions over a network which include transmitting electronic transaction information such as account numbers. If the payment information is being transmitted over an open network such as the Internet, it must be sent in a secure manner. Additionally, if the PIN information is being sent to a merchant for processing, the merchant must be able to know the PIN is valid without actually being able to obtain or view the PIN information. Otherwise, fraudulent use of a customer's PIN by unscrupulous merchants or employees may result.
A number of encryption/decryption techniques are available for encoding a PIN number and other data prior to network transmission. There are two basic types of encryption; symmetric encryption and asymmetric encryption. Symmetric encryption uses a secret key as part of a mathematical formula which encrypts data by transforming the data using the formula and key. After the data is encrypted, another party can decrypt the data using the same secret key with a related decryption algorithm. Because the same key is used for both encryption and decryption, the technique is said to be symmetric. A conventional example of a symmetric encryption algorithm is the NIST Data Encryption Standard (DES).
Asymmetric encryption techniques use two different keys as a pair for encrypting and decrypting information. The two keys are normally referred to as a private (or secret) key and a public key. When data is encrypted with one key of the pair, the other key is used to decrypt the data. For example, if a sender of data signs the data with his secret key, anyone with the public key can verify the message. Since public keys are typically known to the public, the contents of a data signed with a secret key cannot be protected. However, the origination of the data can be verified by determining if a particular secret key was used to “sign” the data. This authentication process is termed a digital signature.
The asymmetric key set can also be used to protect the contents of a message. If person A wants to send an encrypted message to person B that no one else can read, the sender encrypts the data or message with person B's public key and sends it to person B. Now, only the holder of B's secret key is able to decrypt the data. If a combination of keys is used, a person could both authenticate and encrypt the message. The use of an asymmetric pair of keys is more robust than symmetrical encryption, making it desirable for use in financial transactions. However, asymmetric encryption is mathematically intense and requires significantly more processing resources than symmetric encryption. This characteristic tends to either limit the application of asymmetric encryption to small blocks of data, subject the system to significant, undesirable processing overhead, or require special dedicated encryption hardware to perform efficiently. A popular example of an asymmetric encryption method is the Rivest-Shamir-Adelman (RSA) cryptography method, by RSA Data Security Inc., Redwood City, Calif. However, all references to RSA in this document are meant in a generic way to broadly encompass all asymmetric encryption methodology, not just the RSA algorithm.
A form of symmetric encryption which makes this encryption method more powerful is to encrypt data using multiple keys. This technique, called triple DES, first encodes data with symmetric key A, then decodes the data using symmetric key B (which in effect further encodes the data) and then further encodes the data using key A again. Once the data has arrived at its destination, key A is used to decode the data, key B is used to encode the data, and key A is used to decode the data. These extra steps of encoding and decoding make the technique more powerful and more difficult to properly decipher without both keys.
In order to effect secure electronic transactions, a communications protocol is required between the requestor of account verification and the issuer of the account. The Secure Electronic Transaction (“SE™”) protocol is an exemplary protocol which is used to transmit credit card payment information in a secure manner. It would be beneficial if electronic transaction protocols included the ability to securely encrypt the PIN data in such a manner that only PIN verification centers would have access to the unencoded PIN data.
Payment protocols can use a variety of encryption techniques to secure messages. In one scheme, most of the transmitted data is encrypted using DES or a similar symmetric encryption scheme. In order to provide the key to the receiver of the message, the DES key used to encrypt the information is included in the message and is separately encrypted using the stronger asymmetric encryption such as RSA. In addition to the DES key being asymmetrically encrypted, the primary account number (“PAN”) and other possible data are also asymmetrically encrypted. The receiver of the information can provide its public RSA key to the sender so that the DES key and account information can be encrypted with that key. The receiver then will be the only entity able to decrypt the DES key and account information because the receiver is the only entity which has the corresponding private key. In the case of a merchant receiving the payment information from a customer inside the message, it would be beneficial to prevent the merchant from decrypting certain information which would need to be only analyzed by a financial institution which processes the payment information. The merchant does not require viewing the account data and PIN itself but will rely on the financial institution to process that data. Other order information, such as product identification, would be documented and processed by the merchant.